Tiling for Dynamic Scheduling

نویسندگان

  • Ravi Teja Mullapudi
  • Uday Bondhugula
چکیده

Tiling is a key transformation used for coarsening the granularity of parallelism and improving locality. It is known that current stateof-the-art compiler approaches for tiling affine loop nests make use of sufficient, i.e., conservative conditions for the validity of tiling. These conservative conditions, which are used for static scheduling, miss tiling schemes for which the tile schedule is not easy to describe statically. However, the partial order of the tiles can be expressed using dependence relations which can be used for dynamic scheduling at runtime. Another set of opportunities are missed due to the classic reason that finding valid tiling hyperplanes is often harder than checking whether a given tiling is valid. Though the conservative conditions for validity of tiling have worked in practice on a large number of codes, we show that they fail to find the desired tiling in several cases – some of these have dependence patterns similar to real world problems and applications. We then look at ways to improve current techniques to address this issue. To quantify the potential of the improved techniques, we manually tile two dynamic programming algorithms – the Floyd-Warshall algorithm, and Zuker’s RNA secondary structure prediction and report their performance on a shared memory multicore. Our 3-d tiled dynamically scheduled implementation of Zuker’s algorithm outperforms an optimized multi-core implementation GTfold by a factor of 2.38. Such a 3-d tiling was possible only by reasoning with more precise validity conditions.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Scheduling of Wavefront Parallelism on Scalable Shared-memory Multiprocessors

Tiling exploits temporal reuse carried by an outer loop of a loop nest to enhance cache locality. Loop skewing is typically required to make tiling legal. This restricts parallelism to wavefronts in the tiled iteration space. For a small number of processors, wavefront parallelism can be efficiently exploited using dynamic selfscheduling with a large tile size. Such a strategy enhances intratil...

متن کامل

Dynamic Cargo Trains Scheduling for Tackling Network Constraints and Costs Emanating from Tardiness and Earliness

This paper aims to develop a multi-objective model for scheduling cargo trains faced by the costs of tardiness and earliness, time limitations, queue priority and limited station lines. Based upon the Islamic Republic of Iran Railway Corporation (IRIRC) regulations, passenger trains enjoy priority over other trains for departure. Therefore, the timetable of cargo trains must be determined based...

متن کامل

New scheduling rules for a dynamic flexible flow line problem with sequence-dependent setup times

In the literature, the application of multi-objective dynamic scheduling problem and simple priority rules are widely studied. Although these rules are not efficient enough due to simplicity and lack of general insight, composite dispatching rules have a very suitable performance because they result from experiments. In this paper, a dynamic flexible flow line problem with sequence-dependent se...

متن کامل

Tiling for Heterogeneous Computing Platforms Ecole Normale Supérieure De Lyon Tiling for Heterogeneous Computing Platforms Tiling for Heterogeneous Computing Platforms

In the framework of fully permutable loops tiling has been extensively studied as a source to source program transformation However little work has been devoted to the mapping and scheduling of the tiles on physical processors Moreover targeting hetero geneous computing platforms has to the best of our knowledge never been considered In this paper we extend tiling techniques to the context of l...

متن کامل

Delivering High Performance to Parallel Applications Using Advanced Scheduling

This paper presents a complete framework for the parallelization of nested loops by applying tiling transformation and automatically generating MPI code allowing for an advanced scheduling scheme. In particular, under advanced scheduling scheme we consider two separate techniques: first, the application of a suitable tiling transformation, and second the overlapping of computation and communica...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2014